A mobile device may be capable of supporting various bi-directional data services that enable it to receive and send data to other devices or components. Due to their nature or functionality, these services may have different requirements for typical parameters like the data rate and latency. For example, a text messaging service may be considered a low data rate service that does not require low latency while a real-time gaming service, in contrast, likely requires a much higher data rate and a very low latency. Such requirements can be important factors in the choice of the duplex mode for the service, which defines how the device utilizes important system resources, such as frequency spectrum and time, in order to both receive and send data related to the service.
Some of the well known duplex modes like time-division duplex (TDD) and frequency-division duplex (FDD) may be used in these data services. The services may also use another technique called “full-duplex,” which has received considerable attention recently due to its potential to provide improved latency and data rate performance in comparison to other duplex modes. However, full-duplex also may cause issues or problems, including interfering with neighboring devices in close proximity. In addition, the use of full-duplex may negatively impact the battery life of the mobile device and may require an unreasonable amount of self-calibration. Thus there are general needs for systems and methods for choosing to use full-duplex for a service, and in general for selecting a duplex mode for the service.